package ar.edu.unsam.algo2.tp2.partido.observers

import ar.edu.unsam.algo2.tp2.partido.DespachadorMails
import ar.edu.unsam.algo2.tp2.partido.Movimiento
import ar.edu.unsam.algo2.tp2.partido.Mail
import ar.edu.unsam.algo2.tp2.partido.Jugador

class AvisoInscripcion implements PartidoObserver {

	@Property DespachadorMails despachador

	new(DespachadorMails despachador) {
		this.despachador = despachador
	}

	override actualizar(Movimiento mov) {
		var Mail mail = new Mail

		if (mov.movimiento.equals("Alta")) {
			mail.remitente = "sistema@partido.com.ar"
			mail.setAsunto("Inscripcion en partido")
			mail.setMensaje(
				mov.jugador.nombre + " se inscribio en el partido del dia " + mov.partido.dia + "/" + mov.partido.mes +
					"/" + mov.partido.anio)

			for (Jugador j : mov.partido.jugadores) {
				if (!j.equals(mov.jugador)) {
					mail.destinatario = j.email
					despachador.enviar(mail)
				}
			}
		}

	}
}
